From: Lionel Landwerlin Date: Wed, 26 Jun 2013 13:47:33 +0000 (+0100) Subject: screenShield: fix empty screen shield X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4002 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=7403545a481e1a8e267d094673cdbe37229f629a;p=gnome-shell.git screenShield: fix empty screen shield If the drag action ends after something else has put the screen shield into a different state we can end up in an inconsistent screen shield state where the whole thing is empty. https://bugzilla.gnome.org/show_bug.cgi?id=703126 --- diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 254bc68ad..15cc65ffc 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -720,6 +720,8 @@ const ScreenShield = new Lang.Class({ }, _onDragEnd: function(action, actor, eventX, eventY, modifiers) { + if (this._lockScreenState != MessageTray.State.HIDING) + return; if (this._lockScreenGroup.y < -(ARROW_DRAG_THRESHOLD * global.stage.height)) { // Complete motion automatically let [velocity, velocityX, velocityY] = this._dragAction.get_velocity(0);